home *** CD-ROM | disk | FTP | other *** search
/ Tech Arsenal 1 / Tech Arsenal (Arsenal Computer).ISO / tek-06 / am21.zip / AM21.DOC < prev    next >
Text File  |  1992-07-15  |  19KB  |  560 lines

  1.   AI-LANBIOS Low-Level Driver For AMD 2100-Compatible Adapters (AM21.DOC)
  2.         --------------------------------------------------
  3.              (C) Copyright 1992 ARTISOFT, Inc.
  4.                 (Revised 7/6/92)
  5.  
  6. INTRODUCTION
  7. ============
  8.  
  9. The AM21 low-level AI-LANBIOS driver was developed by AMD in conformance 
  10. with the specifications outlined in the Artisoft AI-LANBIOS Driver 
  11. Development Program.  The AM21.EXE low-level AI-LANBIOS driver allows you to 
  12. use your Novell NE2100, NE1500T or AMD 2100 compatible adapters in a 
  13. LANtastic network.  
  14.  
  15. In order for a Novell-compatible NE2100/1500T adapter to function with
  16. the LANtastic Network Operating System (NOS), you must first install the
  17. adapter as instructed in your adapter installation guide, then run the
  18. supporting software (AM21.EXE and AILANBIO.EXE).  AM21.EXE communicates
  19. with the adapter, while AILANBIO.EXE provides high-level communications
  20. across the local area network.  Because of this, you cannot run any
  21. network software until after you load AM21.EXE and AILANBIO.EXE.  For details
  22. about the AILANBIO.exe program, please refer to your LANtastic manuals.
  23.  
  24.  
  25. Compatibility Statement
  26. =======================
  27.  
  28. Version 3.00 of AM21 is compatible with Artisoft's LANtastic/AI Network 
  29. Operating System v4.1.  The bus-master architecture of the adapter is 
  30. designed for use in workstations or servers where a single board is 
  31. required.  Users should avoid even leaving more than 1 adapter inserted in
  32. the slots in the back of the computer, as it was found to interfere with the
  33. NE2100 card during driver testing.
  34. In addition, users should also avoid loading the AM21 driver high since the
  35. bus master mode of the adapter cannot access the upper memory blocks on
  36. certain machines.
  37.  
  38.  
  39. AM21.EXE V3.0
  40. =============
  41.  
  42. There are command line switches that you can use when you run AM21.EXE
  43. and AILANBIO.EXE.  These switches allow you greater flexibility in using
  44. these programs.  For information on AM21.EXE command line switches, refer to 
  45. "AM21.EXE COMMAND LINE OPTIONS" in this file.
  46.  
  47.  
  48. Vendor Information
  49. ==================
  50.  
  51. AMD, 901 Thompson Place, P.O. Box 3453, Sunnyvale CA 94088-3453.  Application
  52. support hotline: 800-222-9323 (phone).
  53.  
  54.  
  55. RUNNING AM21.EXE
  56. ================
  57.  
  58. The syntax for running AM21.EXE is
  59.  
  60.      AM21[switches . . . ] [ ; comment]
  61.  
  62. where "switches" denotes any optional command line switches.  If you are
  63. using more than one switch in a command line, use a space or a forward
  64. slash (/) to separate the arguments.  If a switch takes a value (such as
  65. when you designate the DOS multiplex number with the MPX= switch) the
  66. switch must be followed by an equal sign (=) or a colon (:).  All switch
  67. values are checked to make sure they are valid.  Illegal values produce
  68. error messages.
  69.  
  70. These are valid switch formats:
  71.  
  72.     SWITCH
  73.     /SWITCH
  74.     SWITCH:VALUE
  75.     /SWITCH=VALUE
  76.  
  77. You would use one of the first two formats for a switch that does not take
  78. a value.  For example:
  79.  
  80.     AM21/HELP
  81.  
  82. You would use the third or fourth formats for a switch that takes a value.
  83. Such as:
  84.  
  85.     AM21/MPX=D7
  86.  
  87.  
  88. AM21.EXE COMMAND LINE OPTIONS
  89. =============================
  90.  
  91. The valid AM21.EXE switches appear below.  The letters "ddd"  denote
  92. that you must provide a decimal number.  The letters "hh" denote a
  93. required hexadecimal value.  Values enclosed in brackets "[]" indicate
  94. default values if the switch is omitted.  Values after the brackets denote
  95. the valid range of variables for the switch.
  96.  
  97. ----------
  98.     @switch-file
  99.  
  100. This option specifies that further switches are to be taken from a
  101. switch file.  Any switches after the @switch-file name will be used,
  102. and the switch settings take precedence over any settings in the switch
  103. file.  You may invoke switch files from within switch files as often as
  104. you wish.  The file should contain valid switches and may contain comment
  105. characters (;) at the beginning of each line or after switches.
  106.  
  107. For example,
  108.  
  109.      AM21 @setup
  110.  
  111. The file SETUP contains
  112.  
  113.      ; AM21 AI-LANBIOS driver setup file
  114.      ;
  115.      IOBASE=360            ; Use I/O port address 360
  116.      IRQ=4                 ; Use interrupt request 4
  117.      VERBOSE               ; Display verbose information
  118.  
  119. ----------
  120.      HELP or ?
  121.  
  122. This switch instructs AM21.EXE to display information about the valid
  123. command line switches, but does not install the AM21.EXE driver.  For
  124. example,
  125.  
  126.      AM21/help
  127.      AM21 ?
  128.  
  129. See the messages section for a detailed description of the HELP display
  130. output.
  131.  
  132. ----------
  133.      XEROX
  134.  
  135. This switch causes all transmitted packets to be in the XEROX format
  136. instead of the IEEE 802.3 standard.  When using this switch AM21.EXE
  137. will receive both XEROX and IEEE 802.3 packets.
  138.  
  139. ----------
  140.      IOBASE=hhh [300] One of the following choices:
  141.          300 320 340 360
  142.  
  143. This switch specifies the I/O base address configured on the adapter.  The
  144. IOBASE switch value must match the jumper setting on the card.  The
  145. default value is the same as the default factory setting on the cards.
  146.  
  147. The IOBASE numbers must be in multiples of 20H.  If a non-multiple is
  148. encountered, the I/O base address is rounded down to the closest address.
  149. For example, IOBASE=310 is the same as IOBASE=300.
  150.  
  151. Consult your adapter installation guide for more information about setting
  152. the I/O base address on the card.
  153.  
  154. ----------
  155.      IRQ=dd [5] 3-15
  156.  
  157. This switch specifies the interrupt request (IRQ) level for the board.  If
  158. you have more than one adapter installed, each should have its own unique
  159. IRQ.  The IRQ switch value must match the jumper setting on the card.  The
  160. default value is the same as the default factory setting on the card.
  161.  
  162. Consult your adapter installation guide for more information on setting
  163. IRQ jumpers on the cards.
  164.  
  165. NOTE: If you have a 2100 compatible adapter, not all interrupts are
  166. supported. These adapters support only interrupts 3,4,5 and 9.
  167.  
  168. ----------
  169.      DMA=d [5] 3-7 (Excluding 4)
  170.  
  171. This switch specifies the DMA channel (DREQ/DACK) for the board. If you
  172. have more than one adapter installed, each should have it's own unique
  173. DREQ/DACK setting. The DMA switch value should match the jumper setting
  174. on the board.   Both the DREQ and DACK jumpers must be set to the same number.
  175. The default number is the same as the default factory setting on the card.
  176.  
  177. Consult your adapter installation guide for more information on setting
  178. DREQ/DACK jumpers on the cards.
  179.  
  180. NOTE: DMA level 4 is never supported on the adapter and will generate an
  181. error message if selected.
  182.  
  183. ----------
  184.      MPX=hh [C7] C0-FF
  185.  
  186. This switch specifies the DOS multiplex (MPX) number to use for
  187. communication with AILANBIO.EXE.  You will need to change this value only
  188. if the default MPX number is in use by another application or NETBIOS.
  189. Multiplex numbers 00 through BF are reserved for DOS use; therefore, you
  190. must use a multiplex number between C0 and FF.
  191.  
  192. ----------
  193.      PACKET_SIZE=dddd [1500] 570-1500
  194.  
  195. This switch specifies the maximum size of transmitted IEEE 802.3 packets.
  196. You may need to change this value when using certain bridges that do not
  197. support the full 1500-byte packet size.  Even when you reduce the packet
  198. size, the low-level driver can still receive larger packets.
  199.  
  200. ----------
  201.      RBUFS=dd [4] 2-16 (2,4,8,16)
  202.  
  203. This switch specifies the number of allocated receive buffers used by
  204. AM21.EXE. Increasing this number can increase performance, but will also
  205. require the use of more memory.
  206.  
  207. Receive buffers must be a power of two. Any other number will be rounded
  208. down to the nearest power of two.
  209. For example, RBUFS=7 is the same as RBUFS=4.
  210.  
  211. ----------
  212.      RBUF_SIZE=dddd [1518] 256-1518
  213.  
  214. This switch specifies the size of each allocated receive buffer used by
  215. AM21.EXE. Decreasing this number will require the use of less memory, but
  216. may impact performance.
  217.  
  218. Receive buffers are always an even number of bytes. Odd byte counts will
  219. be rounded up to an even number.
  220. For example, RBUF_SIZE=1001 is the same as RBUF_SIZE=1002.
  221.  
  222. The number of RBUFS will be adjusted if necessary to create a buffer
  223. environment at least 1518 bytes in size.
  224. For example, RBUF_SIZE=256 RBUFS=2 is the same as RBUF_SIZE=256 RBUFS=8.
  225.  
  226. ----------
  227.      TBUFS=dd [2] 2-10
  228.  
  229. This switch specifies the number of allocated transmit headers used by
  230. AM21.EXE. Each transmit header occupies 100 bytes, so increasing this
  231. number will increase memory usage accordingly. Increasing this number
  232. can increase performance of the network.
  233.  
  234. ----------
  235.     REMOVE
  236.  
  237. This switch removes AM21.EXE from memory.  You must remove TSR programs
  238. in the opposite order they were loaded.  For example, if you loaded
  239. AM21.EXE and then AILANBIO, you must remove AILANBIO before AM21.EXE
  240. In addition, if you have more than one invocation of AM21.EXE and
  241. AILANBIO you must use the MPX= switch on the command line to specify which
  242. copy of AM21.EXE but not (AILANBIO) that you want to unload.  For
  243. example, if you load two copies of AM21.EXE and AILANBIO:
  244.  
  245. AM21.EXE/MPX=C7
  246. AILANBIO/ADAPTER=0/MPX=C7
  247. AM21.EXE/MPX=D7
  248. AILANBIO/ADAPTER=1/MPX=D7
  249.  
  250. To unload these copies of AM21.EXE and AILANBIO:
  251.  
  252. AILANBIO/REMOVE
  253. AM21.EXE/MPX=D7/REMOVE
  254. AILANBIO/REMOVE
  255. AM21.EXE/MPX=C7/REMOVE
  256.  
  257. The REMOVE option will remove the most recently run copy of AILANBIO.
  258.  
  259. ----------
  260.      VERBOSE
  261.  
  262. This switch causes the AM21.EXE driver to be installed and detailed
  263. information about the configuration of the AM21.EXE driver to be
  264. displayed.  See the messages section for a detailed description of the
  265. VERBOSE output.
  266.  
  267. ----------
  268.      XBUS
  269.  
  270. This switch causes the AM21.EXE driver to extend the bus timing of a
  271. PCnet-ISA based adapter, another product line designed by AMD.  This allows 
  272. operation in certain machines that require longer bus cycles such as the 
  273. Toshiba T5200 series laptops.  For AMD 2100-compatible adapters, this switch
  274. has no effect.
  275.  
  276.  
  277. USING MULTIPLE ADAPTERS
  278. =======================
  279.  
  280. IMPORTANT NOTE: Multiple 2100 style adapters may not operate in some
  281. machines due to the bus master architecture of the design in relation
  282. to the motherboard timing.
  283.  
  284. AM21.EXE and AILANBIO.EXE communicate with each other using a DOS
  285. multiplex (MPX) number.  Each AM21.EXE and AILANBIO.EXE pair supports
  286. one adapter.  You will need to run an additional copy of AM21.EXE and
  287. AILANBIO.EXE for each additional adapter installed in your computer.
  288. Using command line switches, you must assign each AM21.EXE and
  289. AILANBIO.EXE pair a unique multiplex and adapter number.  You must also
  290. make sure each copy of AM21.EXE has a unique IRQ line, DMA channel and
  291. I/O port address.  For example:
  292.  
  293.     AM21
  294.     AILANBIO
  295.     AM21/MPX=D7/IRQ=4/DMA=6/IOBASE=320
  296.     AILANBIO/MPX=D7/ADAPTER=1
  297.  
  298. The first invocation of AM21.EXE and AILANBIO.EXE loads into the first
  299. adapter using the default MPX number (C7), interrupt request number (5),
  300. DMA channel (5), I/O port address (300) and adapter number (0).  The
  301. command line switches in the second invocation instruct the NETBIOS to
  302. load into the second card, (adapter number 1) using interrupt request 4,
  303. DMA channel 6, IOBASE 320 and DOS MPX number D7.
  304.  
  305.  
  306. AM21.EXE MESSAGES
  307. ===================
  308.  
  309. The AM21.EXE driver produces two types of messages: Informative and
  310. Error.  All error messages are preceded by the text "ERROR:" and in those
  311. cases the AM21.EXE driver is not installed.
  312.  
  313.  
  314. --------
  315. MESSAGE:
  316.  
  317. AI-LANBIOS AM21 driver Vn.nn - (C) Copyright 1992 ARTISOFT Inc.
  318.  
  319. This message is displayed each time the low-level driver is invoked.
  320.  
  321. --------
  322. MESSAGE:
  323.            ---- AM21 driver installed ----
  324.  
  325. This message is displayed after the low-level driver is successfully
  326. installed. 
  327.  
  328. --------
  329. MESSAGE:
  330.          ---- AM21 driver NOT installed ----
  331.  
  332. This message is displayed if the low-level driver is not installed.  The
  333. driver will not be installed if HELP information is displayed or an error
  334. occurred.
  335.  
  336. --------
  337. MESSAGE:
  338.  
  339. Command line              /verbose 
  340. IEEE 802.3 node address  00001A188085   Network packet size      1500 
  341. Allocated Rx buffers     4              Allocated Tx headers     2    
  342. Rx buffer size           1518           IO base address          0300 
  343. Interrupt request (IRQ)  5              DMA channel (DREQ/DACK)  5    
  344. MPX interface number     C7             Packet type              IEEE 802.3
  345. Bytes of memory used     8832  
  346.  
  347. This message is displayed if the VERBOSE switch is specified.  The values
  348. displayed specify how the low-level driver is configured.  Some values may
  349. not agree with switch values specified on the command line.  This will
  350. happen when you specify an IOBASE switch value that is not a proper
  351. multiple of the allowed value, as an example.
  352.  
  353. --------
  354. MESSAGE:
  355.  
  356. Valid command line switches:
  357.     HELP
  358.     XEROX
  359.     IOBASE= Range 0300 to 0360 hex 
  360.     IRQ= Range 3 to 15 decimal 
  361.     DMA= Range 3 to 7 decimal 
  362.     MPX= Range C0 to FF hex 
  363.     PACKET_SIZE= Range 574 to 1500 decimal 
  364.     RBUFS= Range 2 to 16 decimal 
  365.     RBUF_SIZE= Range 256 to 1518 decimal 
  366.     TBUFS= Range 2 to 10 decimal 
  367.     REMOVE
  368.     VERBOSE
  369.     XBUS
  370.     ?
  371.     @ Range 0 to 2048 byte file 
  372.  
  373. This message is displayed when the HELP or ? switch is used.  Each valid
  374. switch is listed with the acceptable range of values (if any) and the base
  375. (hex or decimal) that the numbers must be entered in.  The acceptable file
  376. size range for indirect files (@) is also listed.
  377.  
  378. --------
  379. MESSAGE:
  380.  
  381. AM21 not loaded
  382.  
  383. You have issued the AM21/REMOVE command and do not have AM21.EXE
  384. loaded into memory.  Only issue this command after the program is loaded.
  385.  
  386. -------
  387. MESSAGE:
  388.  
  389.               ---- AM21 removed ----
  390.  
  391. The AM21.EXE driver has been removed from memory.
  392.  
  393. -------
  394. ERROR:    Can't REMOVE -- AM21 interrupts re-hooked
  395.  
  396. Meaning:  You have attempted to remove AM21.EXE and the interrupts are
  397.       in use by another TSR, or AM21.EXE was not the last TSR
  398.       loaded.
  399.  
  400. Remedy:   Remove any TSRs loaded after AM21.EXE.  For example, if you
  401.       load AM21.EXE then AILANBIO.EXE, you must first remove
  402.       AILANBIO.EXE, then you can remove AM21.EXE.
  403.  
  404. -------
  405. ERROR:    Installed AM21 is different version
  406.  
  407. Meaning:  You have loaded a version of the AM21.EXE program and
  408.       attempted to remove it from memory with the /REMOVE switch.  The
  409.       version with which you are attempting to remove AM21.EXE is
  410.       not the same version that was loaded.
  411.  
  412. Remedy:   Remove AM21.EXE with the same version of the program that was
  413.       loaded.
  414.  
  415. ------
  416. ERROR:   Cannot open indirect file - @file
  417.  
  418. Meaning: The file "file" cannot be opened as an indirect file.
  419.  
  420. Remedy:  The file must exist before it can be used as an indirect file.
  421.  
  422. ------
  423. ERROR:   Illegal character after switch name - ??????xnnnn
  424.  
  425. Meaning: The switch ?????? is followed by a character other than "=" or
  426.      ":" or the switch does not take a value.
  427.  
  428. Remedy:  Only use the characters "=" or ":" to specify switch values and
  429.      do not place characters after switches that do not take values.
  430.  
  431. ------
  432. ERROR:   Illegal digit in switch value - ??????=nnnn
  433.  
  434. Meaning: An illegal digit (character) was encountered in the numeric
  435.      switch value.
  436.  
  437. Remedy:  You must restrict numeric decimal values to the numbers 0-9. 
  438.      You must restrict hexadecimal values to the numbers 0-9 and the
  439.      letters A-F.
  440.  
  441. ------
  442. ERROR:   Illegal switch - ??????=nnnn
  443.  
  444. Meaning: The switch ??????=nnnn is not a recognized switch.
  445.  
  446. Remedy:  You may only specify legal switches on the command line.
  447.  
  448. ------
  449. ERROR:   MPX number hh is already in use - Try another number
  450.  
  451. Meaning: The multiplex (MPX) interrupt number hh is being used by another
  452.      application or low-level driver.
  453.  
  454. Remedy:  Try another MPX number.
  455.  
  456. ------
  457. ERROR:   No network hardware found at I/O base address hhhhH
  458.  
  459. Meaning: AM21.EXE did not find an adapter at the I/O port address
  460.      specified on the command line.
  461.  
  462. Remedy:  Make sure the adapter is correctly installed and that the IOBASE
  463.      command line switch corresponds to the I/O base jumper setting on
  464.      the board.
  465.  
  466. NOTE:    This message will also appear if the DREQ jumper is missing from
  467.      the adapter.
  468.  
  469. ------
  470. ERROR:   Incorrect DMA channel specified
  471.  
  472. Meaning: DMA channel 4 was specified and is illegal.
  473.  
  474. Remedy:  Make sure the proper DMA channel is selected.
  475.  
  476. ------
  477. ERROR:   Insufficient memory to load driver
  478.  
  479. Meaning: Not enough free DOS memory existed to load the driver.
  480.  
  481. Remedy:  Remove other resident programs to free conventional memory.
  482.  
  483. NOTE:    On some machines the AM21.EXE driver cannot be loaded high
  484.      since the bus master mode of the adapter cannot access
  485.      the upper memory blocks.
  486.  
  487. ------
  488. ERROR:   Adapter self test failed -- <sub message>
  489.  
  490. Meaning: The AM21 performs a self test when the driver is loaded and
  491.      has failed.
  492.  
  493. Remedy:  Replace the adapter or if a PCnet-ISA type card is being
  494.      installed, set the XBUS command line switch.
  495.  
  496. Valid sub messages:
  497.  
  498.      Initialization timeout
  499.      Loopback timeout
  500.      Network error
  501.      Transmit error
  502.      Receive error
  503.      Message compare error
  504.  
  505. ------
  506. ERROR:   Incorrect DMA jumper setting
  507.  
  508. Meaning: The jumper setting of the adapter doesn't match the value
  509.      given on the command line.
  510.  
  511. Remedy:  Make sure the command line DMA switch matches the DREQ/DACK
  512.      jumper setting of the adapter.
  513.  
  514. ------
  515. ERROR:   Incorrect IRQ jumper setting
  516.  
  517. Meaning: The jumper setting of the adapter doesn't match the value
  518.      given on the command line.
  519.  
  520. Remedy:  Make sure the command line IRQ switch matches the IRQ jumper
  521.      setting of the adapter.
  522.  
  523. ------
  524. ERROR:   Switch value not in range - ??????=nnnn
  525.      Valid range is ssss to eeee
  526.  
  527. Meaning: The value nnnn is not in proper range.  The value "ssss"
  528.      represents the lowest acceptable value and the value "eeee"
  529.      represents the highest acceptable value.
  530.  
  531. Remedy:  Limit your range of values to the acceptable range.
  532.  
  533.  
  534. TESTING AM21.EXE RETURN CODES (ERROR LEVELS)
  535. ==============================================
  536.  
  537. You may test the AM21.EXE return code or error level in a batch file by
  538. using the IF ERRORLEVEL command.  The following error levels are returned:
  539.  
  540.      0     No error encountered.  AM21.EXE driver installed
  541.      1     MPX number is in use
  542.      2     Switch error
  543.      3     No network hardware present
  544.      4     AM21 not loaded
  545.      5     Can't remove, different version loaded
  546.      6     Cannot remove, interrupts re-hooked
  547.      7     ERROR: Can't REMOVE -- AI-LANBIOS (R) still installed
  548.      8     Incorrect DMA number specified
  549.      9     Insufficient memory to load driver
  550.      10    Incorrect DMA jumper setting
  551.      11    Incorrect IRQ jumper setting
  552.      12    Adapter failed self test
  553.  
  554. ------------------
  555. AMD is a registered trademark of Advanced Micro Devices, Inc.
  556.  
  557. PCnet-ISA is a trademark of Advanced Micro Devices, Inc.
  558.  
  559. Novell is a registered trademark of Novell, Inc.
  560.